//package com.app.mingluxing.fragment;
//
//import android.animation.ObjectAnimator;
//import android.content.Intent;
//import android.os.Bundle;
//import android.text.format.DateUtils;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.ViewGroup;
//import android.widget.AdapterView;
//import android.widget.ImageView;
//import android.widget.ListView;
//import android.widget.TextView;
//
//import com.alibaba.fastjson.JSONObject;
//import com.app.mingluxing.R;
//import com.app.mingluxing.adapter.MessageItemAdapter;
//import com.app.mingluxing.base.BaseFragment;
//import com.app.mingluxing.bean.MessageResult;
//import com.app.mingluxing.message.NewsDetailActivity;
//import com.app.mingluxing.message.SearchActivity;
//import com.app.mingluxing.net.HttpUtil;
//import com.app.mingluxing.pull2refush.PullToRefreshBase;
//import com.app.mingluxing.pull2refush.PullToRefreshListView;
//import com.app.mingluxing.ui.HomeActivity;
//import com.app.mingluxing.utils.CommonUtils;
//import com.app.mingluxing.utils.Constant;
//
//import java.util.ArrayList;
//import java.util.List;
//
//
///**
// * 消息
// * Created by Aaron on 2015/7/20.
// */
//public class MessageFragment extends BaseFragment implements View.OnClickListener {
//
//    //    private ImageView iv_left;
//    private ImageView iv_right;
//    private TextView tv_choose_right;
//    private TextView tv_choose_left;
//    //随着标题滑动的红线
//    private TextView tv_red_line;
//    private int screenwidth;
//    private int pageNum;
//    private PullToRefreshListView lv;
//    private List<MessageResult.MessageData> msgBeanList;
//    private String messageType;
//
//    /**
//     * 当前显示的 是消息还是待办还是通知 的 角标
//     */
//    private int currentMessageIndex;
//    //当前页面显示的内容: 消息还是代办事件 还是 通知
////    private int currentContent;
//    private MessageItemAdapter messagesAdapter;
//
//    @Override
//    public void onCreate(Bundle savedInstanceState) {
//        super.onCreate(savedInstanceState);
//    }
//
//    @Override
//    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
//
//        View view = inflater.inflate(R.layout.fragment_message, null);
//        msgBeanList = new ArrayList<MessageResult.MessageData>();
////        currentContent=0;
////        currentMsgType=1;
//        //消息
//        messageType = Constant.MSG_MESSAGE;
//
//        currentMessageIndex = 0;
//        initWidget(view);
//
//        pageNum = 0;
//        loadDataRefresh();
//
//        return view;
//    }
//
//    @Override
//    public void onResume() {
//        super.onResume();
//
//        HomeActivity h = (HomeActivity) getActivity();
//
//        h.getMessageCount();
//
//    }
//
//    @Override
//    public void onDestroy() {
//        super.onDestroy();
//
////        mApplication.cancelPendingRequests(getClass().getName());
//    }
//
//    /**
//     * 获取服务器数据
//     *
//     * @param pageNum 页数
//     */
//    private void getMessageList(int pageNum) {
//
//        JSONObject j = new JSONObject();
//        j.put("type", messageType);
//        j.put("token", sp.getString(Constant.TOKEN, ""));
//        j.put("pageNum", pageNum);
//
//        HttpUtil.setPostRequest("获取中...", getActivity(), Constant.WEB_ROOT + Constant.GETRECEIVEMSGLIST, j.toJSONString(),
//                getClass().getName(), new HttpUtil.SuccessListener() {
//
//                    @Override
//                    public void setOnSuccessListener(String str) {
//                        //刷新完成
//                        lv.onRefreshComplete();
//
//                        try {
//                            MessageResult messagesResult = JSONObject.parseObject(str, MessageResult.class);
//
//                            if (messagesResult.code == Constant.STATUS_SUCCESS) {
//
//                                if (messagesResult.list != null) {
//
//                                    List<MessageResult.MessageData> tempList = messagesResult.list;
//
//                                    setDataView(tempList);
//
//                                    messagesAdapter.setMessageData(msgBeanList);
//                                    messagesAdapter.notifyDataSetChanged();
//
//                                }
//                            } else {
//                                showToast(Constant.showErrorMsg(messagesResult.code, getActivity()));
//                            }
//                        } catch (Exception e) {
//                            e.printStackTrace();
//                            showToast(Constant.NODATA);
//                        }
//                    }
//                }, new HttpUtil.FailListener() {
//                    @Override
//                    public void setOnFailListener() {
//                        if (msgBeanList != null) {
//                            msgBeanList.clear();
//                            messagesAdapter.setMessageData(msgBeanList);
//                            messagesAdapter.notifyDataSetChanged();
//                        }
//                    }
//                });
//
//    }
//
//    private void initWidget(View view) {
//
//        screenwidth = CommonUtils.getScreenSize(getActivity())[0];
//
//        lv = (PullToRefreshListView) view.findViewById(R.id.lv);
//        iv_right = (ImageView) view.findViewById(R.id.iv_right);
//        tv_choose_left = (TextView) view.findViewById(R.id.tv_choose_left);
//        tv_choose_right = (TextView) view.findViewById(R.id.tv_choose_right);
//        tv_choose_left.setText(getResources().getString(R.string.news));
//        tv_choose_right.setText(getResources().getString(R.string.notify));
//        tv_red_line = (TextView) view.findViewById(R.id.tv_red_line);
//        tv_choose_left.setOnClickListener(this);
//        tv_choose_right.setOnClickListener(this);
////        iv_left.setOnClickListener(this);
//        iv_right.setOnClickListener(this);
//        lv.setMode(PullToRefreshBase.Mode.BOTH);
//
//        messagesAdapter = new MessageItemAdapter(getActivity(), msgBeanList);
//        lv.setAdapter(messagesAdapter);
//
//        lv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
//            @Override
//            public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
//                String label = DateUtils.formatDateTime(getActivity(), System.currentTimeMillis(),
//                        DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_ABBREV_ALL);
//
//                // Update the LastUpdatedLabel
//                refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label);
//                pageNum = 0;
//                msgBeanList.clear();
//                loadDataRefresh();
//            }
//
//            @Override
//            public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
//                pageNum++;
//                loadDataRefresh();
//            }
//        });
//
//        lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
//            @Override
//            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//
//                --i;
//                if (msgBeanList != null) {
//
//                    Intent mIntent = new Intent(getActivity(), NewsDetailActivity.class);
//                    msgBeanList.get(i).flag = "1";
//                    mIntent.putExtra("url", msgBeanList.get(i).url);
//                    startActivity(mIntent);
//
//                    messagesAdapter.setMessageData(msgBeanList);
//                    messagesAdapter.notifyDataSetChanged();
//
//                }
//
//            }
//        });
//    }
//
//    @Override
//    public void onClick(View v) {
//        switch (v.getId()) {
////            case R.id.iv_left:
////                chooseMessageStyle(v);
////                break;
//            case R.id.iv_right:
//                Intent intent = new Intent(getActivity(), SearchActivity.class);
//                getActivity().startActivity(intent);
//                break;
//            case R.id.tv_choose_left: //消息
//                changeRedLine(currentMessageIndex, 0);
////                currentContent=0;
//                pageNum = 0;
//                msgBeanList.clear();
//
//                messageType = Constant.MSG_MESSAGE;
//                getMessageList(pageNum);
//                break;
//            case R.id.tv_choose_right://通知
//                changeRedLine(currentMessageIndex, 1);
////                currentContent=0;
//                pageNum = 0;
//                msgBeanList.clear();
//                messageType = Constant.MSG_NOTIFICATION;
//                getMessageList(pageNum);
//                break;
//        }
//    }
//
//    private void changeRedLine(int currentIndex, int toIndex) {
//        ObjectAnimator anim = null;
//        //获取当前控件的x距离
//        float curTranslationX = tv_red_line.getTranslationX();
//
////        LogUtil.e("TAG", "curTranslationX==>" + curTranslationX);
//
//        switch (currentIndex) {
//
//            case 0: //当前在第一位置
//
//                if (toIndex == 1) {
//                    anim = ObjectAnimator.ofFloat(tv_red_line, "translationX", 0, screenwidth / 2);
//                    currentMessageIndex = 1;
//                }
//                break;
//
//            case 1:
//
//                if (toIndex == 0) {
//                    anim = ObjectAnimator.ofFloat(tv_red_line, "translationX", curTranslationX, 0);
//                    currentMessageIndex = 0;
//                }
//                break;
//
//        }
//
//        if (anim != null) {
//            //设置移动时间0.5秒s
//            anim.setDuration(500);
//            anim.start();
//        }
//
//    }
//
//    /**
//     * 如果有更多则进行重复判断
//     *
//     * @param temp 新的集合
//     */
//    protected void setDataView(List<MessageResult.MessageData> temp) {
//
//        if (msgBeanList.size() == 0) {
//            msgBeanList = temp;
//            return;
//        }
//
//        int nowSize = msgBeanList.size();
//        int newSize = temp.size();
//        for (int i = 0; i < newSize; i++) {
//            boolean exist = true;
//            MessageResult.MessageData mcod = temp.get(i);
//            for (int j = 0; j < nowSize; j++) {
//                MessageResult.MessageData nmcod = msgBeanList.get(j);
//                if (mcod.id.equals(nmcod.id)) {
//                    exist = false;
//                    break;
//                }
//            }
//            if (exist)
//
//                msgBeanList.add(mcod);
//
//        }
//    }
//
//    private void loadDataRefresh() {
////        switch (currentContent){
////            case  0:
//        getMessageList(pageNum);
////                break;
////            case 1:
////                getMessageList(pageNum);
////                break;
////        }
//    }
//}
//
//
